1. Field of the Invention
The present invention relates to video production and compression processing.
2. Description of the Related Art
Traditional video compression processing applies an xe2x80x9cobjectivexe2x80x9d video encoding algorithm to an incoming video stream. An objective video encoding algorithm proceeds without taking into account the content of the video stream being encoded. For example, the encoding algorithm may divide the video stream into 16-frame groups of pictures (GOPs), where the first frame in each GOP is encoded as an intra (I) frame (i.e., a frame encoded using only intra-frame encoding techniques without reference to any other frames) and the remaining (i.e., subsequent) 15 frames in the GOP are encoded using inter-frame encoding techniques (e.g., as predicted (P) frames or bi-directional (B) frames).
Such objective video encoding can lead to inefficiencies. For example, if the first frame in a GOP happens to correspond to the last frame in a particular scene in the video sequence, then the inter-frame encoding techniques used to encode the subsequent 15 frames (which correspond to the next scene in the video sequence) may either (1) poorly encode those frames (i.e., produce low quality in the video playback) or (2) require many bits to encode or (3) both.
Some prior art video compression schemes apply a xe2x80x9csubjectivexe2x80x9d video encoding algorithm that does take the content of the incoming video stream into account during video compression processing. For example, a subjective encoding algorithm may, either automatically or with the assistance of a human operator, be able to take the location of certain scene changes into account when defining GOPs in the video stream. For the example described earlier, such a video encoding algorithm may extend the previous GOP by one frame to include the last frame in the old scene and then start the next GOP with the first frame in the new scene. As a result, the second GOP will likely be encoded at higher quality using fewer bits.
This ability to extend or shorten GOPs by a frame or two can be used to address problems caused by abrupt scene changes that occur within a few frames of a transition between xe2x80x9cnormalxe2x80x9d GOPs during video compression processing. The usefulness of this capability however is limited to those particular situations. Other situations, such as scene changes that occur in the middle of GOPs and/or gradualxe2x80x94rather than abruptxe2x80x94scene changes, might not be addressed by such subjective video encoding algorithms.
As described earlier, both objective and subjective video compression schemes take an incoming video stream xe2x80x9cas is.xe2x80x9d Objective compression schemes process the incoming video stream xe2x80x9cblindly,xe2x80x9d that is, without taking into account any knowledge of the video content. Subjective compression schemes, on the other hand, use knowledge of the video content (e.g., the location of scene changes) to adapt the video encoding processing based on the video content to improve encoding efficiency (e.g., video quality and/or bit rate). In both objective and subjective video compression schemes, however, video production, during which the incoming video stream for the video compression stage is generated, operates in an xe2x80x9copen loopxe2x80x9d manner, that is, without any regard to the subsequent video compression processing.
The present invention, on the other hand, is directed to video production that takes subsequent video compression processing into account. In particular, information about the video compression stage is used to constrain processing and scene content during the video production stage. Depending on the implementation, that information may include one or more static inputs to the video production stage and/or one or more dynamic inputs fed back from the video compression stage in real time. To the extent that information regarding the subsequent video compression processing is input into the earlier video production processing, the present invention may be said to be directed to xe2x80x9cclosed loopxe2x80x9d video production, where the video production processing takes subsequent video compression processing into account.
According to one embodiment, the present invention is a method for producing an uncompressed video stream, comprising the steps of (a) receiving one or more sets of video imagery; and (b) generating the uncompressed video stream from the one or more sets of video imagery, wherein selection of content in the uncompressed video stream is constrained based on information relating to potential subsequent video compression processing.
According to another embodiment, the present invention is a video processing system, comprising (1) a video production stage and (2) a video compression stage. The video production stage is configured to (a) receive one or more sets of video imagery; and (b) generate the uncompressed video stream from the one or more sets of video imagery, wherein selection of content in the uncompressed video stream is constrained based on information relating to potential subsequent video compression processing. The video compression stage is configured to apply the video compression processing to the uncompressed video stream to generate an encoded video bitstream.